#pragma once

// Really ugly way to do this, but have no choice.

#define DEFCMD(x) void cmd##x() { g.npp->ExecuteCommandByIndex(x); }
DEFCMD(0)
DEFCMD(1)
DEFCMD(2)
DEFCMD(3)
DEFCMD(4)
DEFCMD(5)
DEFCMD(6)
DEFCMD(7)
DEFCMD(8)
DEFCMD(9)
DEFCMD(10)
DEFCMD(11)
DEFCMD(12)
DEFCMD(13)
DEFCMD(14)
DEFCMD(15)
DEFCMD(16)
DEFCMD(17)
DEFCMD(18)
DEFCMD(19)
DEFCMD(20)
DEFCMD(21)
DEFCMD(22)
DEFCMD(23)
DEFCMD(24)
DEFCMD(25)
DEFCMD(26)
DEFCMD(27)
DEFCMD(28)
DEFCMD(29)
DEFCMD(30)
DEFCMD(31)
DEFCMD(32)
DEFCMD(33)
DEFCMD(34)
DEFCMD(35)
DEFCMD(36)
DEFCMD(37)
DEFCMD(38)
DEFCMD(39)
DEFCMD(40)
DEFCMD(41)
DEFCMD(42)
DEFCMD(43)
DEFCMD(44)
DEFCMD(45)
DEFCMD(46)
DEFCMD(47)
DEFCMD(48)
DEFCMD(49)
DEFCMD(50)
DEFCMD(51)
DEFCMD(52)
DEFCMD(53)
DEFCMD(54)
DEFCMD(55)
DEFCMD(56)
DEFCMD(57)
DEFCMD(58)
DEFCMD(59)
DEFCMD(60)
DEFCMD(61)
DEFCMD(62)
DEFCMD(63)
DEFCMD(64)
DEFCMD(65)
DEFCMD(66)
DEFCMD(67)
DEFCMD(68)
DEFCMD(69)
DEFCMD(70)
DEFCMD(71)
DEFCMD(72)
DEFCMD(73)
DEFCMD(74)
DEFCMD(75)
DEFCMD(76)
DEFCMD(77)
DEFCMD(78)
DEFCMD(79)
DEFCMD(80)
DEFCMD(81)
DEFCMD(82)
DEFCMD(83)
DEFCMD(84)
DEFCMD(85)
DEFCMD(86)
DEFCMD(87)
DEFCMD(88)
DEFCMD(89)
DEFCMD(90)
DEFCMD(91)
DEFCMD(92)
DEFCMD(93)
DEFCMD(94)
DEFCMD(95)
DEFCMD(96)
DEFCMD(97)
DEFCMD(98)
DEFCMD(99)
DEFCMD(100)
DEFCMD(101)

npp::PFUNCPLUGINCMD GetCommand(int num)
{
	switch (num)
	{
#define GETCMD(x) case x: return cmd##x;
		GETCMD(0)
		GETCMD(1)
		GETCMD(2)
		GETCMD(3)
		GETCMD(4)
		GETCMD(5)
		GETCMD(6)
		GETCMD(7)
		GETCMD(8)
		GETCMD(9)
		GETCMD(10)
		GETCMD(11)
		GETCMD(12)
		GETCMD(13)
		GETCMD(14)
		GETCMD(15)
		GETCMD(16)
		GETCMD(17)
		GETCMD(18)
		GETCMD(19)
		GETCMD(20)
		GETCMD(21)
		GETCMD(22)
		GETCMD(23)
		GETCMD(24)
		GETCMD(25)
		GETCMD(26)
		GETCMD(27)
		GETCMD(28)
		GETCMD(29)
		GETCMD(30)
		GETCMD(31)
		GETCMD(32)
		GETCMD(33)
		GETCMD(34)
		GETCMD(35)
		GETCMD(36)
		GETCMD(37)
		GETCMD(38)
		GETCMD(39)
		GETCMD(40)
		GETCMD(41)
		GETCMD(42)
		GETCMD(43)
		GETCMD(44)
		GETCMD(45)
		GETCMD(46)
		GETCMD(47)
		GETCMD(48)
		GETCMD(49)
		GETCMD(50)
		GETCMD(51)
		GETCMD(52)
		GETCMD(53)
		GETCMD(54)
		GETCMD(55)
		GETCMD(56)
		GETCMD(57)
		GETCMD(58)
		GETCMD(59)
		GETCMD(60)
		GETCMD(61)
		GETCMD(62)
		GETCMD(63)
		GETCMD(64)
		GETCMD(65)
		GETCMD(66)
		GETCMD(67)
		GETCMD(68)
		GETCMD(69)
		GETCMD(70)
		GETCMD(71)
		GETCMD(72)
		GETCMD(73)
		GETCMD(74)
		GETCMD(75)
		GETCMD(76)
		GETCMD(77)
		GETCMD(78)
		GETCMD(79)
		GETCMD(80)
		GETCMD(81)
		GETCMD(82)
		GETCMD(83)
		GETCMD(84)
		GETCMD(85)
		GETCMD(86)
		GETCMD(87)
		GETCMD(88)
		GETCMD(89)
		GETCMD(90)
		GETCMD(91)
		GETCMD(92)
		GETCMD(93)
		GETCMD(94)
		GETCMD(95)
		GETCMD(96)
		GETCMD(97)
		GETCMD(98)
		GETCMD(99)
		GETCMD(100)
		GETCMD(101)
	default:
		return NULL;
	}
}
